Constructing Automata for UML 2.0 Interactions

نویسنده

  • Jochen Wuttke
چکیده

Model checking as a method for verifying system models has become widely used in software engineering recently. One important aspect of distributed systems that needs to be verified is the communication between different entities in the system. Several graphical languages have been proposed to model those aspects of computer systems. The Unified Modeling Language is one well known and widely used standard describing software models in general, and communication behaviour in particular. The extended version UML 2.0 introduces significant changes to interactions, UML’s formalism to specify the communication behaviour in distributed systems. The informal specification describes an interaction language with substantial expressive power provided by the newly introduced interaction operators. However, a formal semantics is lacking. Since model checkers usually work on finite state systems, most often in the form of finite state automata like Büchi automata, constructing automata for interactions is a fundamental intermediate step between the specification and the verification of a system. Consequently, defining a formal semantics for interactions in the form of automata helps to alleviate the deficiency of UML 2.0 and also bridges the gap between modelling and verification. This diploma thesis presents an approach to define semantics for UML 2.0 interactions. Furthermore, a simple text-based language to describe interactions is introduced. Interaction specifications in that language are used as input for the interaction processor, prototypically implementing the algorithms used to define the formal semantics for interactions. Output of the transformation can be generated in different formats and is strongly oriented towards the requirements of Hugo/RT. Hugo/RT is an ongoing project with the goal to develop a set of tools to apply model checking techniques to UML state machines and interactions. A short case study shows the use of Hugo/RT and highlights the extended expressive power of UML 2.0 interactions. Zusammenfassung Model Checking als Methode zur Verifikation von Systemmodellen wird im Software Engineering mehr und mehr angewandt. Ein wesentlicher Aspekt von verteilten Systemen, der der Verifikation bedarf, ist das Kommunikationsverhalten der Objekte in dem System. Für die Modellierung von Software Systemen wurden bereits mehrer graphische Sprachen entworfen. Die Unified Modeling Language UML ist die wohl bekannteste und verbreitetste dieser Sprachen. In der neuen, erweiterten Version UML 2.0 werden bedeutende Erweiterungen für Interaktionen eingeführt. Interaktionen sind UMLs Formalismus um Kommunikationsverhalten zu spezifizieren. Der Standard schlägt mehrere ausdrucksstarke Operatoren für Interaktionen vor, eine formal definierte Semantik fehlt jedoch. Da Model Checker auf endlichen Zustandssystemen arbeiten, meist in der Form von endlichen Automaten, wie zum Beispiel Büchi-Automaten, ist die Konstruktion von Automaten aus Interaktionen, bzw. deren Spezifikationen, ein fundamentaler Schritt von der Modellierung von Systems hin zu deren Verifikation. Daher ist es nahe liegend eine Semantik für Interaktionen in der Form von endlichen Automaten anzugeben. So kann die Lücke zwischen Spezifikationen und deren Verifikation überbrückt werden, und gleichzeitig die Ungenauigkeit des UML 2.0 Standards auf diesem Gebiet ausgeglichen werden. Diese Diplomarbeit stellt einen Ansatz vor, die Semantik der in UML 2.0 neu eingeführten Operatoren für Interaktionen durch Automaten, oder genauer durch Regeln zur Generierung von Automaten, zu definieren. Dazu wurde eine einfache text-basierte Sprache definiert, die es erlaubt Interaktionen zu spezifizieren. Eingabedateien in dieser Sprache werden als Eingabe für den eigentlichen Transformationsprozess verwendet, der die hier entworfenen Algorithmen prototypisch implementiert. Die Ausgabe der Transformation kann in verschiedenen Formaten erfolgen und orientiert sich stark an den Erfordernissen von Hugo/RT. Hugo/RT ist ein Projekt zur Entwicklung von Werkzeugen, die die Anwendung von ModelChecking Techniken and UML Zustandsdiagramme und Interaktionen erleichtern. Eine kurze Fallstudie erläutert die Verwendung von Hugo/RT und zeigt auf, wie die verbesserte Ausdrucksstärke von UML 2.0 Interaktionen diesen Prozess verbessert.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

UseCases in UML 2.0: Analyzing Support for Constructing Whole Picture Behavior

In a use case model of an entity, multiple use cases are used to describe its behavior, leaving the behavior specification scattered across different use cases with no specific way to get a “whole picture” of the entity’s behavior. To address the issue, we introduced in [16] a simple formal model Generic UC View which also articulates four consistency issues capturing key requirements on behavi...

متن کامل

Activity-Driven Synthesis of State Machines

The synthesis of object behaviour from scenarios is a well-known and important issue in the transition from system analysis to system design. We describe a model transformation procedure from UML 2.0 interactions into UML 2.0 state machines that focuses, in contrast to existing approaches, on standard synchronous operation calls where the sender of a message waits until the receiver object has ...

متن کامل

A New Design for Two-input XOR Gate in Quantum-dot Cellular Automata

Quantum-dot Cellular Automata (QCA) technology is attractive due to its low power consumption, fast speed and small dimension, therefore, it is a promising alternative to CMOS technology. In QCA, configuration of charges plays the role which is played by current in CMOS. This replacement provides the significant advantages. Additionally, exclusive-or (XOR) gate is a useful building block in man...

متن کامل

An Institution for UML 2.0 Interactions

This work presents the theory of UML 2.0 interactions, that is proven to define an institution.

متن کامل

Semantics of UML 2.0 Interactions with Variabilities

Means for the representation of variability in UML 2.0 interactions, as presented in a previous work, are further formalised and given a mathematically formal semantics. In this way, UML 2.0 interactions can be used in the conception and development of system families within domain and application engineering tasks. Following the transition from domain to application engineering as a configurat...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005